In a computer network, plural computer systems are joined together to exchange information and share resources. Thus, a computer network is a distributed computing environment in which networked computer systems provide users with the capabilities of access to distributed resources, for example, remote files and databases or remote printers, and to distributed processing, for example, where an application is processed on two or more computer systems. In such a distributed computing environment, the components of an application may reside on different machines but work together. For example, each work station in a computer network often provides a user interface and local analysis and data processing, while larger, host computers, for example, a file server or mainframe, may maintain a large set of data files, coordinate access to large databases and perform larger scale data processing.
In a distributed processing environment, each application or process must be able to communicate and exchange information with other applications or processes in the environment. Currently, many inter-application or inter-process exchanges are performed using a messaging technique commonly referred to as message queuing. In message queuing, a first (or “client”) process passes a message to request processing by a second (or “server”) process. The messages are queued at the server process to await handling thereby. In turn, the server process returns an alert when the results are ready. A message queuing messaging technique may be further characterized as being a “trigger initialized” messaging technique if a notification is issued to the server process upon placement of the request message in the message queue and the message queue meets certain specified criteria. One message oriented middleware product which uses a trigger initialized message queuing messaging technique to enable processes to communicate and exchange information in a distributed computing environment is known as MQ Series messaging software and is commercially available through International Business Machines Corporation of Armonk, N.Y.
A drawback to trigger initialized message queuing messaging techniques such as that disclosed in the MQ Series messaging software is that, if a message is already waiting in a queue when a new message arrives, the trigger flag is not set or otherwise checked when the new message arrives. As a result, if an error occurred during the arrival of a prior message and the trigger flag was not set upon the arrival of the prior message, then all later arriving messages will begin to back up in the queue because the trigger flag remains unset. As a result, both the original message as well as the later arriving messages will not be retrieved by the server process and the requesting messages issued by the client process will remain unprocessed.
A traditional technique used to identify problems in queues is to select individual queues for testing. To test a selected queue, a network administrator constructs a message designed to pass through that queue. If the message fails to arrive in a specified period of time, then the network administrator can reasonably conclude that the selected queue is having problems. It should be readily appreciated that to diagnose problems in a queue-based messaging system by testing individual queues thereof would be a laborious and time consuming task, particularly if the queue-based messaging system has many queues. Accordingly, many queue-based messaging systems are equipped with an interface which enables the network administrator to review the queues themselves. Heretofore, however, the network administrator/message queue interface has not been properly designed to enable the network administrator to readily identify and rectify problems in the message queues. For example, while the MQ Series messaging software is equipped with a message queue interface (“MQI”) through which a series of administrative functions may be executed, such administrative functions operate on a queue-level. Using the MQI, the network administrator is able to review the status of a selected queue but cannot simultaneously review the status of plural queues. Thus, if a problem develops at the serving platform due to a problem within one of the message queues maintained thereat, the network administrator must review the functioning of each queue to locate the problem queue. Furthermore, the administrative tools available to the network administrator through the MQI are not particularly well configured to diagnose problems within a queue. Oftentimes, upon selecting a queue for examination, the network administrator must parse through pages of information related to the selected queue before the administrator is able to determine whether the queue is functioning properly or improperly.
Accordingly, this invention provides a tool by which a network administrator may readily identify and rectify queuing problems within a queue-based messaging system used for the exchange of messages between client and server processes or computer platforms of a computer network by enabling the network administrator to review selected information regarding selected queues of the queue-based messaging system at the network-level.